public class AppVerCtlEx {

    public AppVerCtlEx(EntitlementsConfigController c) { }
    public AppVerCtlEx(GettingStartedController c) { } 
    public AppVerCtlEx(ConfigVerifyCtl c) { } 
    
    // When incrementing the version number, change in all three places
    public class Entitlements_2_5_8_Exception extends Exception {}
    public String ThrowAppVer { get{ throw new Entitlements_2_5_8_Exception(); } private set; }    
    public String AppVersion { get{ return (AppVersion='2.5.8'); } private set; }    
    
    static testMethod void testAppVerCtlEx() {
        AppVerCtlEx a1 = new AppVerCtlEx((EntitlementsConfigController)null);
        AppVerCtlEx a2 = new AppVerCtlEx((GettingStartedController)null);
        AppVerCtlEx a3 = new AppVerCtlEx((ConfigVerifyCtl)null);
        try {
            String dummyStr = a1.ThrowAppVer; 
            System.assert(false,'Excepted throw');
        } catch(Exception e) {
            // This is good
        }
        system.assertNotEquals(0,a1.AppVersion.length(),'App version string should not be empty');
    }
}